The present invention is directed towards the delivery of video content through a network and, more specifically providing real-time, bandwidth-efficient delivery of live video data to multiple destinations in a non-buffered manner.
The Internet, as we know it today, traces its roots back to 1969 where the first successful message was delivered over its ancestral network, the ARPANET. In 1974, a commercial version of the ARPANET was introduced to the market and by 1977 the ARPANET had grown to 111 hosts. In 1982, the Transmission Control Protocol (TCP) and the Internet Protocol (IP) were adopted as the standard data protocols (TCP/IP) for linking together various networks, such as the ARPANET. These linked networks are what we today call the Internet. Today, there are more than two million Internet hosts and over 840 million users around the world.
The Internet is quite versatile in the types of data and content that can be delivered, as well as in the types of equipment or destinations to which such data and content is delivered. The versatility of the Internet is due in part to the mechanism used for transmitting data. In essence, the Internet allows any type of data or content to be delivered as long as the data or content is packed in data packets in conformance with the TCP/IP protocol requirements. Thus, the Internet can be used for the delivery of content such as data, audio and video.
In the delivery of voice and/or video over the Internet, several technical issues must be confronted. The amount of data that is required to represent an audio or video signal can be quite extensive. When delivering large amounts of data over the Internet, there is an increased probability that data packets containing portions of the audio or video signal can be lost, damaged or delayed. As a result, there can be a significant lag time in the delivery of the content. In addition, the amount of data, especially for video content, that must be transmitted is quite enormous. Thus, significant delays can be incurred in the delivery of the content due to bandwidth constraints.
One method that has been introduced to address these problems is to reduce the quality of the delivered signals. Such a technique would allow the content to be delivered in a more bandwidth efficient manner, however, as the world is migrating towards higher quality (i.e., the introduction of digital radio, DVDs, High-Definition TV, etc.) it may be quite reluctant to adopt such an inferior technology.
Other solutions for providing audio or video over the Internet rely heavily upon the use of buffering. Buffering is a process whereby a receiving machine will request audio or video data and will store a certain amount of time worth of data into a buffer before starting to playback the content. While the stored content is being played back, the computer requests the downloading of additional data. The goal is to continually maintain a continuous feed of the audio or video by continually loading the buffer while the content is being played. The problem with this technique is that the playback of the content is not in real-time, it is delayed at least by the amount of time to fill up the buffer initially. In addition, during heavy traffic periods, the buffer may be emptied prior to completely downloading additional data. In this situation, the playback can be choppy or delayed and results in frozen frames.
Another method that has been introduced is the use of data compression. Current state of the art data compression techniques allow for a reduction in the amount of data required to deliver audio and/or video content. However, even using current state-of-the-art data compression techniques, the delivery of real-time video is still subject to significant delays.
Therefore, there is a need in the art for a method and system to deliver video data over the Internet in a bandwidth efficient and real-time manner that alleviates delays due to content delivery or buffering.